home *** CD-ROM | disk | FTP | other *** search
- Dokumentation zu cdmp.rx v1.2 J.Klingele 18.11.2000
-
-
- Beschreibung:
- -------------
-
- cdmp.rx - Liest mittels 'cdda' Tracks von Audio-CD's, speichert sie auf
- Festplatte und erzeugt daraus mittels 'Lame' oder 'Pegase' Files im
- mp3-Format (MPEG1 LayerIII bzw. LayerII)
-
- Usage: [rx] cdmp.rx (datenfile)
-
- Autor - Jürgen Klingele - jklingele@gmx.de
-
-
- Disclaimer:
- -----------
-
- Für eventuelle Schäden egal welcher Art die direkt oder indirekt durch den
- Gebrauch von cdmp.rx hervorgerufen werden übernimmt der Autor keinerlei
- Haftung.
- Das Verhalten und die Entwicklung der von Drittherstellern verwendeten oder
- erwähnten Software unterliegt nicht der Einflussnahme und Zuständigkeit des
- Autors.
-
-
- Lizenz:
- -------
-
- Das Skript und zugehörende Dokumentation sind Freeware und dürfen in
- unveränderter Form und nur gemeinsam beliebig weitergegeben werden.
- Änderungen und Anpassungen zum privaten Gebrauch sind ausdrücklich
- gestattet.
- Weitergabe von Skript und Dokumentation in veränderter Form bedürfen der
- Genehmigung des Autors.
-
-
- Voraussetzungen:
- ----------------
-
- - Die Programme cdda (Michael van Elst) und Lame (© Mark Taylor) oder
- Pegase (© Didier Levet) müssen (korrekt) installiert und im DOS-Suchpfad
- verfügbar sein.
- > getestet wurde mit cdda V1.64, Lame V3.20 und Pegase V1.8f
-
- - CD-Rom und Kontroller die fähig sind Audio-Daten über das IDE oder
- SCSI-Interface zu übertragen.
-
- - für einen 4 min. Titel werden ~42MB für das CD-File und je nach mp3
- Komprimierung ~2-8 MB für das mp3-File benötigt. Genügend freier Platz
- auf einem Laufwerk ist also notwendig.
-
- - designed und getestet wurde das Skript auf einen A4000 mit MKII060/50
- Auf Rechnern mit kleineren Prozessoren macht die Erzeugung von mp3 keinen
- rechten Sinn, dauert einfach zu lange. (Manche denken das allerdings auch
- vom 060er) 8-)
- Zum Abspeichern der Audio-files kann es natürlich immer verwendet werden,
- sollte dafür Bedarf bestehen.
- Ob PPC-User Bedarf für dieses Skript weiss ich nicht, die mp3-Erzeugung
- passiert da sowieso in quasi Realtime.
-
- - cdda muss beim Einlesen auf das audio-device und das entsprechende CD-Rom
- device zugreifen. Manche Software-CD-Player sperren aber sobald sie
- gestartet sind diese Resourcen, also auch dann wenn sie keine Titel
- abspielen. Damit ist für 'cdmp' eine Bearbeitung der CD natürlich nicht
- möglich.
- Abhilfe schafft hier nur den Player zu beenden oder einen anderen zu
- verwenden. (->Utilities/SongPlayer)
-
-
- Installation:
- -------------
-
- - irgendwohin kopieren, wo man es wieder findet. Es empfiehlt sich natürlich
- das Skript irgendwo im Suchpfad unterzubringen, um sich die Pfadangabe zu
- sparen. Das Script-Flag sollte gesetzt sein.
-
- - evtentuell die am Skriptanfang befindlichen Parameter anpassen.
-
- Wichtig dabei sind eigentlich zu Anfang nur
- 1. die Pfade zum audio-, mp3- und, falls vorhanden, dem
- CDID-Verzeichnis.
- Standardmässig werden die eingelesen Audiodateien (und die
- entsprechenden Datenfiles) in CD-A: und die mp3-Dateien unter MP3:
- abgespeichert. CDID-Daten werden in CDID: gesucht.
- Also entweder diese ->Parameter im Skript anpassen oder ein
- entsprechendes Assign anlegen. (->Utilities/Assignwedge)
-
- > in CDID-Dateien werden die Daten gespeichert die nicht auf der
- CD-Rom enthalten sind. Normalerweise sind das Interpret(en),
- CD-Titel und die einzelnen Songtitel.
- Ich persönlich halte das ID-System in dieser Form für ziemlich
- eingeschränkt. Ohne CD sind die gespeicherten Daten relativ nutzlos.
- Man hätte wenigstens andere Daten wie Spielzeit Erscheinungsdatum
- usw. integrieren können. Da aber nun anscheinend jeder dieses
- Minimalsystem akzeptiert und damit arbeitet, tut 'cdmp' das eben
- auch. 8-(
-
- 2. Anpassen des 'plan' Parameters auf das entsprechende CD-ROM Laufwerk.
- Näheres hierzu unter ->Parameter und in der cdda-Anleitung.
-
- 3. Ausahl des gewünschten Encoders und anpassen der entsprechenden
- Optionen.
-
- Starten:
- --------
-
- Gestartet wird über eine Shell oder das Workbenchmenu 'Befehl ausführen'.
- Entweder nur mit 'cdmp.rx' oder mit 'cdmp.rx datenfile' wobei 'datenfile'
- der Name einer zuvor mit 'cdmp' erzeugten Parameterdatei ist (mehr dazu
- weiter unten ->A.4).
- Sollte das Script-Flag von 'cdmp.rx' nicht gesetzt sein muss beim Aufruf
- jeweils noch 'rx' vorangestellt werden.
- Sollte das Skript nicht im Suchpfad zu finden sein muss der komplette pfad
- mit eingegeben werden.
-
- Auch der Start über die Workbench mit Icon ist möglich (Projekticon,
- Standardprogramm rx). Dabei ist die Übergabe eines Datenfiles aber nicht
- möglich.
-
-
- Bedienung:
- ----------
-
- Vorab: Das Skript lässt sich jederzeit durch 'Ctrl-C' (und evt. Return wenn
- auf Eingaben gewartet wird) abbrechen.
-
- A) Gehen wir es mal der Reihe nach an und stellen uns vor, dass noch nie mit
- 'cdmp' gearbeitet wurde. Der Ablauf gestaltet sich dann folgendermassen:
-
-
- 1. CD einlegen und 'cdmp.rx' starten.
-
- 'cdmp' liest jetzt mit Hilfe von 'cdda' das Inhaltsverzeichnis der
- eingelegten CD ein und zeigt eine Übersicht an. Sollte eine CDID-Datei
- zu dieser CD vorhanden sein, wird in der Übersicht Interpret, CD-Titel
- und die einzelnen Songtitel mit Spieldauer dargestellt. Existiert keine
- CDID werden nur Titelnummer und Titellänge angezeigt.
-
- Wenn beim Einlesen ein Fehler auftritt, wird 'cdmp' nach entsprechender
- Fehlermeldung beendet. Dies kann passieren weil z.B. keine, oder eine
- Daten-CD im Laufwerk liegt, oder audio.device bzw. CD-ROM von anderen
- Programmen blockiert wird.
-
- > damit 'cdda' richtig funktioniert müssen die env: Variablen
- CDDA-UNIT und CDDA-DEVICE von 'cdda' natürlich korrekt gesetzt sein.
-
-
- 2. jetzt können die gewünschten Titel durch Angabe der Titelnummern einzeln
- eingegeben werden. Die Reihenfolge ist dabei beliebig. Es erfolgt eine
- Kontrolle auf Doppeleingaben und Überschreitung der Gesamttitelzahl.
-
- 'Return' ohne Eingabe einer Titelnummer beendet diese Abfrage.
-
- Durch Eingabe von 'b' (immer ohne ' natürlich) wird der jeweils letzte
- eingegebene Titel wieder gelöscht.
-
- > jedesmal wenn 'cdmp' etwas wissen will stehen hinter dem Fragetext in
- Klammern die möglichen Eingaben. Grossgeschriebene Texte zeigen dabei
- die Default-Antwort an. Etwa bedeutet (j/N) das nur die Eingabe von
- 'j' auch Ja bedeutet. Alles andere wird als Nein interpretiert. Bei
- der Eingabe selbst ist Gross- oder Kleinschreibung egal. Alle diese
- Eingaben werden sowieso als Grossbuchstaben ausgewertet.
-
- > nach jedem eingegebenen Titel wird der insgesamt benötigte Platz auf
- der Festplatte angezeigt. Dies bezieht sich nur auf die Audio-files,
- die Grösse der mp3-files wird hier nicht berücksichtigt. Es handelt
- sich auch nur um einen circa-Wert. Also bitte die Platte nicht auf's
- letzte MegaByte ausreizen.
-
- Sollte der angezeigte Wert, warum auch immer, überhaupt nicht
- stimmen kann der Faktor der zum Errechnen der Dateigrösse benutzt
- wird in den ->Parametern angepasst werden.
-
- > es gibt hier noch eine andere 'versteckte' Eingabemöglichkeit. Aber
- mehr dazu später im Kapitel ->Leadout.
-
-
- 3. Jetzt erfolgt eine Abfrage ob auch die entsprechenden mp3-Files erzeugt
- werden sollen.
-
- - Wer das nicht nicht will, weil er nur die Audiodaten benötigt oder
- manuell weiterarbeiten möchte, gibt hier 'n' ein.
- Dann werden später nur die entsprechenden Audio-files auf die Platte
- kopiert. Der benutzte Dateiname entspricht dabei bei CD's mit CDID
- dem Titel (der zuvor eventuell an die DOS-Spielregeln angepasst wurde),
- bei CD's ohne CDID wird die Titelnummer verwendet, d.h. Titel1, Titel2.
-
- > Achtung, bei Titeln ohne CDID-Namen werden die Audio-Dateien beim
- Bearbeiten der nächsten CD ohne CDID wegen gleicher Namen wieder
- überschrieben. Wenn sie also weiter gebraucht werden, muss man sie
- manuell umbenennen oder in ein anderes Verzeichnis verschieben.
-
- - Wer mp3-Dateien erzeugen will, gibt hier logischerweise 'j' ein.
- Bei CD's mit vorhandener CDID-Datei wird der mp3-Name automatisch aus
- dem Songtitel generiert.
- Bei CD' ohne CDID müssen nun die entsprechenden Dateinnamen ohne
- Extension eingegeben werden. Die Abfrage erfolgt für jeden der zuvor
- eingegebenen Titel einzeln in derselben Reihenfolge.
- Hierbei wird die Gross/Kleinschreibung so übernommen wie der Name
- eingegeben wird.
- Sinn macht es auch hier als Dateinamen die Liedtitel zu benutzen.
- Als Default-Dateiname ist wieder die Titelnummer voreingetragen. Als
- Extension wird standardmässig '.mp3' benutzt. Dies ergibt die Namen:
- Titel1.mp3, Titel2.mp3 usw.
-
- > Diese abgespeicherten Audio-Dateien werden normalerweise nach
- Erzeugen der mp3-files wieder gelöscht. Sollen die Audio-files
- erhalten bleiben, kann man das in den ->Parametern abschalten.
-
- > 'cdmp' verwendet die (Standard-)Extension '.mp3'. Ich halte dies
- für sinnvoller als das auch verwendete '.mpg' um Verwechslungen mit
- Videos im MPEG-Format, die dieselbe Kennzeichnung verwenden, zu
- verhindern.
- Wer aber '.mpg' oder etwas anderes benutzen möchte/muss, kann die
- Extension natürlich in den ->Parametern umstellen.
-
- > Es ist es möglich die Namen mit Leerzeichen einzugeben. Bei der
- späteren Arbeit mit diesen Titel ohne 'cdmp' können die Leerzeichen
- in den Dateinamen aber recht störend wirken, da immer Anführungs-
- zeichen um Pfad und Name nötig sind. Daher werden Leerzeichen bei
- der Eingabe standardmässig durch Unterstriche ersetzt. z.B.: Aus
- 'Dies ist ein Titel' wird 'Dies_ist_ein_Titel'.
-
- Wer das nicht möchte und auf den Leerzeichen besteht, kann das in
- den ->Parametern abschalten, so dass die eingegebenen Namen
- unverändert benutzt werden (sofern möglich s.u.).
-
- > Desweiteren werden auch alle Zeichen die mit den Namensregeln des
- Amiga-Dos kollidieren durch Unterstriche ersetzt. Diese Zeichen sind
- ~%#?<>|()[]":
-
- > Die maximale Länge des mp3-Namens ist abhängig vom verwendeten
- Filesystem und dem entsprechenden ->Parameter max_name_len
- Ist der Name länger als max_name_len abzüglich der Länge der
- Extension, wird der eingegebene Name automatisch gekürzt.
-
- > wird der Name aus obigen Gründen geändert so wird der angepasste
- Dateiname mit entsprechender Meldung nochmal angezeigt.
-
- > es ist hier auch möglich dem eigentlichen Dateinamen noch eine
- zusätzliche Pfadangabe voranzustellen. Dieser Pfad wird aber immer
- unterhalb des MP3-Verzeichnisses eingefügt, darf also kein Laufwerk
- sein und keinen führenden Schrägstrich enthalten. Die zusätzliche
- Pfadangabe und der Dateiname werden wie ein Dateiname behandelt und
- dürfen deshalb auch nicht länger wie die maximale Dateinamenlänge
- sein. Achtung, das angegebene Verzeichnis MUSS auch existieren sonst
- verweigert lame die Arbeit.
-
- Als Eingaben erlaubt sind z.B.:
- Ein_Titel wird zu MP3:Ein_Titel.mp3
- noch ein titel wird zu MP3:noch_ein_titel.mp3
- test/titel.test~1 wird zu MP3:test/titel.test_1.mp3
-
- nicht erlaubt sind:
- ein-titel/
- /ein_titel
- test:titel
-
- (Standardparameter vorausgesetzt)
-
-
- 4. weiter geht's mit der Frage ob mit der Arbeit gleich begonnen wird,
- oder die Daten zur späteren Nutzung abgespeichert werden sollen.
-
- - Wird diese Frage mit 'g' beantwortet beginnt die eigentliche Arbeit
- von 'cdmp'. Ab jetzt werden vom Anwender keine Eingaben mehr verlangt.
- Wer will kann sich jetzt mit einer Kanne Kaffee zurücklehnen und die
- nächsten Stunden der Arbeit von 'cdmp' zuschauen. ;-)
-
- > zuerst werden mit Hilfe von 'cdda' sämtliche Audio-files auf
- Festplatte kopiert. Sobald dies abgeschlossen ist, werden CD und
- CD-laufwerk nicht mehr benötigt und können wieder andersweitig
- verwendet werden. Hierzu erfolgt eine entsprechende Meldung.
-
- - wurde die Frage zur mp3-Erzeugung mit Nein beantwortet beendet
- sich 'cdmp' hier nach dem Speichern der Audiodateien.
-
- > Als nächstes erfolgt die Erzeugung der mp3-files. Der Parameterstring
- der 'Lame' oder 'Pegase' steuert, bzw. der Mode mit dem die
- mp3-Dateien erzeugt werden, wird über ->Parameter festgelegt.
-
- Standardmässig werden mp3-files mit fester Bitrate von 160kbs
- erzeugt. (Dies dauert auf dem 68060 immer noch um eine Stunde.
- Variable Bitraten erzeugen zwar kürzere (und vielleicht bessere)
- Files, brauchen aber auch einiges (ca. 3x) länger. Kleinere Bitraten
- sind m.E., ausser zum Testen, aufgrund der zum Teil schlechten
- Qualität nicht empfehlenswert. (Aber das kann jeder halten wie er
- will.)
-
- Wie erwähnt wird jeweils nachdem das mp3-file erzeugt wurde, die
- entsprechende Audio-datei gelöscht. Dies lässt sich über
- ->Parameter unterbinden so dass diese Datei erhalten bleibt.
-
- Sobald alle mp3-Dateien erzeugt wurden, wird 'cdmp' beendet.
-
- - lautet die Antwort 's' wird als nächstes ein Dateiname abgefragt unter
- dem die, bis jetzt gemachten, Angaben, im Verzeichnis der Audio-Dateien
- abgespeichert werden. Auch diesmal erfolgt eine Kontrolle des Namens
- auf DOS-Konformität. Dieser Name wird bei vorhandener CDID mit dem
- CD-Titel bzw. ohne CDID mit einem einstellbaren (-> Parameter)
- Defaultnamen vorbelegt und braucht ggf. nur noch bestätigt zu werden.
-
- Nach dem Abspeichern der Daten wird 'cdmp' beendet.
-
- > Vielleicht fragt sich jetzt jemand wozu man das Ganze. Wie erwähnt
- dauert das Erzeugen der mp3's mit einem 68060 ziemlich lange. Wenn
- der Rechner in einer halben Stunde sowieso abschaltet wird, macht es
- keinen Sinn die Bearbeitung gleich zu starten, zumal die Bearbeitung
- unterbrochener mp3-files leider nicht fortgesetzt werden kann.
- Man kann aber alles soweit vorbereiten und die Daten abspeichern
- lassen. Bei der nächsten Gelegenheit kann dieses Datenfile dann als
- Parameter beim Programmstart übergeben und abgearbeitet werden.
- Natürlich können auch, während 'cdmp' an den mp3-files einer CD
- arbeitet, bereits die nächste(n) CD('s) vorbereitet werden.
-
-
- B. Somit kommen wir zur zweiten Möglichkeit 'cdmp' zu starten, nämlich mit
- Übergabe eines Dateinamens. (s.o.->Starten). Richtig, dieser Dateiname ist
- genau der Name der bei der Auswahl zur späteren Bearbeitung unter ->A.4
- angegeben wurde.
-
- 1. 'cdmp' mit Angabe eines 'cdmp'-Datenfiles starten. > cdmp.rx datenfile
-
- Wenn die Datei existiert liest 'cdmp' das angegebene Datenfile ein und
- zeigt die enthaltenen Daten an. Existiert die Datei nicht, wird ganz
- normal weitergemacht als wäre 'cdmp' ohne Parameter gestartet worden
- ->A.1.
-
- 2. Anschliessend erfolgt die Abfrage ob mit diesen Daten weitergearbeitet
- werden soll.
-
- - Hat man sich mit 'n' dagegen entschieden wird auch ganz normal
- weitergemacht als wäre 'cdmp' ohne Parameter gestartet worden ->A.1.
-
- - bei 'j' .... ähh ja richtig, da geht's....
-
- 3. ....hier weiter.
- 'cdmp' überprüft jetzt ob die richtige CD eingelegt ist. Sollte das
- nicht der Fall sein fordert 'cdmp' zum Einlegen der entsprechenden CD
- auf.
-
- Nach Bestätigen der Meldung mittels Returntaste geht's entweder weiter
- (bei richtiger CD), oder das Spiel wiederholt sich solange bis die
- komplette CD-Sammlung durchprobiert wurde.
-
- > muss ich das erklären? Nein, es sollte klar sein, dass nichts
- vernünftiges dabei rauskommt, wenn ich ein Datenfile von einer
- Bon Jovi-CD erzeuge und beim Bearbeiten eine Aminet-CD im Laufwerk
- liegt.
-
- Anschliessend startet 'cdmp' durch und erzeugt dann ohne weitere
- Unterbrechung die Audio- und falls gewünscht die mp3-files.
-
- Sobald das Datenfile bearbeitet ist, wird 'cdmp' beendet.
-
-
- C. Eine dritter und vorerst letzter Modi in dem 'cdmp' starten kann, ist der
- sogenannte 'Recovery-mode'. Gerüchten zufolge soll ja auch der Amiga von
- Zeit zu Zeit und völlig unerwartet, der reallen Welt entsagen, alles was
- einem wichtig ist wegschmeissen und nach Indien verreisen.
- Andere Rechner stürzen da nur ab. Sagt selbst, ist doch billig, oder. ;-)
-
- Jedenfalls erkennt 'cdmp' automatisch ob eine zuvor gestartete
- Bearbeitung, aus welchem Grund auch immer, abgebrochen wurde. Grundlage
- dafür ist die Datei 'titelliste' im Verzeichnis der Audio-Dateien. In
- dieser Datei wird von 'cdmp' vermerkt welche Titel noch abzuarbeiten
- sind. (->Utilities/Disksafe)
-
-
- 1. Findet 'cdmp' beim starten ohne Übergabe eines Datenfiles, die Datei
- 'titelliste' vor, wird automatisch davon ausgegangen das zuvor eine
- Bearbeitung unterbrochen wurde. 'cdmp' lädt dann den Inhalt dieser
- Datei, zeigt ihn an und bietet die Möglichkeit ab dem abgebrochenen
- Titel weiterzuarbeiten.
-
- Der weitere Ablauf erfolgt dann wie unter B.2 ff beschrieben.
-
- > 2 Dinge sind hierbei wichtig.
-
- a. Will man während 'cdmp' gerade eine CD bearbeitet in einer anderen
- Shell 'cdmp' nochmal starten, um z.B. die nächste CD vorzubereiten,
- findet das neu gestartete Skript die 'titelliste' des gerade
- aktiven Programms und schaltet jetzt fälschlicherweise in den
- 'recovery'-Modus.
- Die folgende Abfrage ob mit diesen Daten weitergearbeitet
- werden soll MUSS in diesem Fall mit 'n' beantwortet werden. 'cdmp'
- ignoriert dann diese Datei und arbeitet normal weiter.
-
- Nicht besonders elegant, ich weiss. Wird sicher irgendwann
- geändert, sobald ich a. Zeit und b. eine Idee habe, wie ich das
- narrensicher umgehen kann.
-
- > Das gleichzeitige Bearbeiten mehrerer mp3-files mit 'cdmp' macht
- zumindest auf einem 060 absolut keinen Sinn. Die Bearbeitungszeiten
- werden astronomisch. Daher greifen alle gestarteten 'cdmp's auf
- die selben Files zu (Audio,titeliste usw.). Aktiv verändert
- werden diese Dateien ja sowieso nur vom arbeitenden Skript.
- Es ist also nicht so das man es nicht hätte anders machen
- können, sondern das es einfach unnötig ist getrennte Parameter
- zu verwalten.
-
- b. 'titelliste' wird jedesmal überschrieben wenn 'cdmp' in den aktiven
- Mode kommt, sprich sobald damit begonnen wird die Audiofiles
- abzuspeichern. Daher muss ein Recovery unmittelbar nach dem Abbruch
- erfolgen. Es ist also nicht möglich eine Bearbeitung abzubrechen, eine
- andere CD zu bearbeiten und anschliessend die abgebrochene Sitzung an
- der Stelle, an der sie unterbrochen wurde, weiterzuführen. Ausnahme:
- Die reine Erzeugung eines Datenfiles verändert 'titelliste' nicht.
-
-
- Leadout:
- --------
-
- Kommen wir zu einem weiteren 'Gimmick' von 'cdmp'. Am Ende nahezu aller
- Songs ist eine mehr oder weniger lange Pause. Ob diese Pause ausser der
- akustischen Trennung einen weiteren Grund hat weiss ich nicht, auf alle
- Fälle lässt sich damit wunderbar die Spielzeit einer CD strecken.
-
- Für mp3-Files ist sie meines Erachtens nach völlig überflüssig. 'cdmp'
- erlaubt daher ein beliebig langes Stück vom Ende eines Titels abzuschneiden.
- Standardmässig werden etwa 2 Sekunden abgezogen. Dieser Standardwert lässt
- sich über ->Parameter anpassen.
-
- Wem die 2s zu lange oder zu kurz sind kann bei der Eingabe der Titelnummer
- einen eigenen, nur für diesen einen Titel gültigen, Wert eingeben. (daher
- oben der Hinweis auf die 'versteckte' Eingabemöglichkeit)
-
- Die Eingabe des Titel erfolgt dann in folgendem Format:
-
- -Abzug(in Sekunden) Titel
-
- Der Abzug kann dabei im Bereich von 0 für keinen Abzug bis beinahe zur max.
- Spielzeit des Titels liegen. 1 Block des Titels wird immer eingelesen, was
- etwa 13 Tausendstel Sekunden entspricht. (so sinnvoll das auch sein mag)
-
- Wichtig dabei ist das '-' am Anfang der Eingabe und das Leerzeichen zwischen
- Abzug und Titel. Der Abzug selber kann als ganze Zahl, als Kommazahl oder
- mit Punkt eingegeben werden.
- Der Wert wird immer auf den nächsten ganzen Block gerundet. (also innerhalb
- von ca. 0,02s. Nein, ich hab's nicht nachgemessen)
-
- Bsp.: -3 4 = Titel 4 mit 3s Abzug
- -4,6 7 = Titel 7 mit 4,6s Abzug
- -0.5 12 = Titel 12 mit 0,5s Abzug
-
-
- Fehlerbehandlung:
- -----------------
-
- Ich habe ausser bei den Eingaben und dem Prüfen der CD, weitgehend auf eine
- Fehlerbehandlung verzichtet.
- Erstens wollte ich das Skript nicht unnötig verkomplizieren und aufblähen
- und zweitens kann eigentlich nicht allzuviel schiefgehen.
- Zu allgemeinen Fehlern, seien es Installationsfehler der benötigten Programme
- oder ein Disk full, gibt's von den beteiligten Programmen eh schon eine
- Fehlermeldung, da brauche ich nicht auch noch so was wie 'Es ist ein Fehler
- aufgetreten. Das Skript wird abgebrochen!' zu bringen.
- Zudem bietet der Recovery-Mode ja meist die Möglichkeit die unterbrochene
- Arbeit weiterzuführen.
-
- Der einzige 'Fehler' der wirklich öfter auftreten kann ist ein blockiertes
- Device, so dass 'cdda' das Inhaltsverzeichnis der CD nicht einlesen kann.
- Und da in diesem Fall keine Titel ausgewählt werden können wird 'cdmp'
- gleich wieder beendet.
-
-
- Utilites:
- ---------
-
- An dieser Stelle erlaube ich mir auf ein paar Hilfsprogrämmchen hinzuweisen
- deren Unterstützung ich mittlerweile nicht mehr missen will und die im
- Hinblick auf die Arbeit mit 'cdmp', dem einen oder anderen mal einen Blick
- wert sein könnten.
- Das soll nun nicht heissen dass es nicht noch andere Programme gibt die
- Gleiches oder Ähnliches können (vielleicht sogar besser). Es sind aber die
- Programme die ich nutze und bei denen ich auf meinem System keinerlei
- Probleme in der Zusammenarbeit mit anderen Programmen feststellen konnte.
-
- Alle Rechte an den Programmen liegen natürlich nach wie vor bei den
- jeweiligen Autoren.
-
- Assignwedge: © Olaf Barthel - ermöglicht beim Auftreten unbekannter Assigns
- bequem per Requester auszuwählen was geschehen soll. (zuweisen,
- abbrechen usw.)
-
- Disksafe: © Thomas Richter - beendet recht zuverlässig (zumindestens bei
- mir) Schreibzugriffe vor einem (Software)Reset und verhindert
- so meistens das Partitionen nicht validiert oder Dateien
- komplett zerstört sind.
-
- SongPlayer: © Stéphane Tavenard - spielt so ziemlich alles was irgendwie
- Krach macht (auch mp3 wenn die mpega.library installiert ist),
- und blockiert vor allem audio.device und CD-Rom nur dann wenn
- er auch einen Titel abspielt.
-
-
- Parameter:
- ----------
-
- Kommen wir zur Zusammenfassung der Parameter. Diese befinden sich alle
- am Skriptanfang und können mit jedem beliebigen Texteditor der ASCII-Dateien
- erzeugen kann, angepasst werden. Textverarbeitungen sind normallerweise nicht
- geeignet da sie den Text auf die Papiergrösse umbrechen und dadurch den
- Programmcode zerstören.
-
- Am Zeilenanfang steht immer der Parametername der NICHT verändert werden darf.
- Hinter dem Gleichheitszeichen steht dann der aktuelle Parameterwert. Richtig,
- dieser darf,kann,sollte verändert werden.
-
- Wichtig dabei ist: Wo Anführungszeichen dran sind, müssen sie auch dran bleiben.
- (und nicht das jetzt ein Schlaumeier die Parameter hier ändert. Die müssen
- natürlich in cdmp.rx geändert werden.) #-)
-
-
- /******* Globale Parameter Variablen *******/
-
- titelpfad = "CD-A:"
-
- > Pfad zum speichern der tracks und sonstiger datenfiles, MUSS mit : oder /
- enden.
- Hier werden alle Audio-files, die abgespeicherten Datenfiles und die
- 'titelliste' abgelegt.
-
-
- mp3pfad = "MP3:"
-
- > Pfad zum speichern der mp3-files, MUSS mit : oder / enden.
- Hier werden die erzeugten mp3-files abgelegt.
-
-
- cdid_dir = "CDID:"
-
- > Pfad zu den CDID's
- Das Verzeichnis in dem die CDID-Dateien gesucht werden. Auch diese
- Pfadangabe MUSS mit : oder / enden. Sollte man nicht im Besitz von
- CDID-Dateien sein, diesen Parameter irgendeinem beliebigen Verzeichnis
- zuweisen (am sinnvollsten RAM:).
-
-
- titellist = "titelliste"
-
- > Dateiname zum abspeichern der eingegeben Titel, wird für Restore benutzt.
- Nach Möglichkeit sollte der Name so bleiben, aber wer unbedingt will kann
- ihn ändern. Diese Dokumentation geht natürlich von 'titelliste' aus.
-
-
- cdlist = "ram:cdliste"
-
- > Dateiname der Titelliste von cdda, wird nur temporär zum einlesen
- verwendet.
- Diese Datei wird mit 'cdda' beim Einlesen der CD erzeugt und enthält deren
- Inhaltsverzeichnis. Es ist prinzipiell egal wo sie gespeichert wird und
- wie sie heisst. Sobald 'cdmp' das Inhaltsverzeichnis anzeigt wird sie
- nicht mehr benötigt und daher gelöscht.
-
-
- mp_ext = ".mp3"
-
- > Extension für mp3-Dateien
- Die Extension die an alle erzeugten mp3-Files angehängt wird. Der Punkt
- sollte bleiben (sonst ist es ja keine Extension ;-) ). Die länge der
- Extension ist prinzipiell egal, darf aber natürlich nicht länger als
- max_name_len - 1 sein. Eine Kontrolle findet aber nicht statt.
-
-
- cdsave = "CDsave"
- > Default Name der für spätere Bearbeitung abgespeicherten 'Arbeitspläne'
- Dieser Name wird nur bei CD's ohne CDID verwendet wenn vom Anwender bei der
- Abfrage kein Name eingegeben wird.
-
-
- plan = "e"
-
- > cdda-Modus e=atapi
- Dieser Parameter legt den Modus fest mit dem 'cdda' auf das CD-Laufwerk
- zugreift und MUSS richtig eingegeben sein. Dies muss man eventuell
- ausprobieren indem man in einer Shell den Befehl 'cdda plan=(a,b,c,d,e,f)
- list' eingibt. Natürlich immer nur einen Plan Parameter nach dem anderen.
- Solange bis keine Fehlermeldung mehr auftritt und cdda das
- Inhaltsverzeichnis der CD auflistet.
-
- Auszug aus der 'cdda'-Anleitung:
- > 'a' is for Sony CDU 8003 and compatible
- > 'b' is for Toshiba XM3401TA and compatible
- > 'c' is for NEC 2X and 3X
- > 'd' is for some Grundig CD-ROMs, may work on Toshiba drives
- > 'e' is for ATAPI (standard command)
- > 'f' is for ATAPI (pre-standard command, never seen such a drive)
-
-
- list_win = 0
- > CD-Inhaltsverzeichnis in einem eigenen Fenster anzeigen? 0=nein 1=ja
- Standardmässig wird das eingelesene CD-Inhaltsverzeichnis in dem Shell-Fenster
- dargestellt in dem auch alle anderen Ein-Ausgaben angezeigt werden. Dies hat
- den Nachteil das diese Anzeige jedesmal bei neuem Text eine Zeile nach oben
- geschoben wird und irgendwann aus dem Anzeigebereich des Fensters rutscht.
- Wird dieser Parameter auf 1 gesetzt wird das Inhaltsverzeichnis in einem
- eigenen, der Grösse des Verzeichnisses angepassten, Fenster angezeigt.
- Ein kleines Problem gibt es dabei. Durch das Öffnen des neuen Fensters wird
- dieses als Standardeingabefensters aktiviert, dadurch muss zur Eingabe der
- Titel erst wieder das alte Fenster angeklickt werden, da ansonsten sie
- Eingaben im falschen Fenster landen. Ausprobieren was einem besser gefällt.
-
-
- lw_xs = 150
- > linke obere Ecke des CD-Inhaltsverzeichnis Fensters
- Horizontale (x) Startposition in Pixeln
-
-
- lw_ys = 10
- > linke obere Ecke des CD-Inhaltsverzeichnis Fensters,
- Vertikale (y) Startposition in Pixeln
-
-
- lw_fw = 9
- > Breite des verwendeten Shell Fonts +1 (topaz 8=9, 11=9)
- Mit diesem und dem folgenden Parameter werden Breite und Höhe des
- Inhaltsfensters abhängig von der Zeilenlänge und der Titelanzahl berechnet.
- Die Werte sind dabei nicht allzu kritisch und sollten einfach so eingegeben
- werden, dass das Inhaltsverzeichnis komplett, ohne getrennte Zeilen
- dargestellt werden kann ohne das der ganze Bildschirm zugepflastert ist.
- Bei Proportionalfonts kann es trotzdem mal vorkommen dass das Fenster nicht
- passt. Aber man kann es ja manuell grösser ziehen.
-
-
- lw_fh = 12
- > Höhe des verwendeten Shell Fonts +1 (topaz 8=9, 11=12)
- s.o.
-
-
- encoder = "lame"
- > gewünschter encoder, "lame" oder "pegase"
- Bitte den Namen des zu verwendenden Encoders eingeben. ACHTUNG, in
- KLEINBUCHSTABEN.
- Bitte auch an den entsprechenden Optionsparamter denken.
- Dies ist nicht der Programmname, diese müssen auf alle Fälle 'lame' bzw.
- 'pegase' lauten. (Wobei die Schreibweise hier egal ist)
-
-
- lameopt = "-b 160"
-
- > Parameteroptionen für lame.
- Dies ist der optionstring der an Lame übergeben wird und festlegt in
- welchem Mode die mp3-files erzeugt werden. Genaueres hierzu falls nötig
- bitte in der lame-Anleitung nachlesen. Das ist doch zu umfangreich um es
- hier nochmals darzustellen.
-
-
- pegaseopt = "LAYER 2 BITRATE 160"
- > Parameteroptionen für Pegase
- Dies ist der optionstring der an Pegase übergeben wird und festlegt in
- welchem Mode die mp3-files erzeugt werden. Auch hierzu falls nötig
- bitte in der Pegase-Anleitung nachlesen.
-
-
- lame_ppc = 0
- > PPC-Version von Lame im Einsatz? 0=nein 1=ja
- Ist klar, oder? 68k Anwender lassen 0 stehen, PPC Anwender geben 1 ein (es
- sei denn sie wollen mal lachen) ;-)
-
-
- ppc_stack = 200000
- > Stackwert für PPC-Lame
- Da die PPC Version von Lame, im Gegensatz zur 68k Version, die Grösse des
- Stack nicht ändern kann, aber recht üppig davon braucht, kann ein
- entsprechender Wert hier eingeben werden. Die 200000 Byte sollten aber
- eigentlich ausreichen. Wenn Lame trotzdem abstürzt kann man testen ob's mit
- mehr Stackspeicher läuft.
-
-
- debug = 0
-
- > Debugmode und -anzeige 0=nein 1=ja.
- Ist für den Anwender eigentlich uninteressant. Im Debugmode wird die
- Erzeugung von Audio und mp3 files nur simuliert und zusätzliche
- Kontrollmeldungen ausgegeben
-
-
- del_titel = 1
-
- > CD-Titel nach Konvertierung löschen 0=nein 1=ja.
- Hiermit wird festgelegt ob die abgespeicherten Audiofiles nach dem Erzeugen
- der mp3-Dateien gelöscht werden oder ob sie auf der Festplatte gespeichert
- bleiben.
-
-
- bpb = 2352
-
- > Bytes per Block
- Über diesen Wert errechnet sich 'cdmp' aus der Blockanzahl die ungefähre
- Dateilänge. Wenn der angezeigte Wert so gar nicht stimmt kann man diesen
- Faktor nach der Formel Festplatten-Dateigrösse (in Byte) / Blockanzahl
- anpassen. Die Blockanzahl ist die Anzahl der benutzten CD-Blocks, und die
- erhält man entweder im Debug-Mode oder mit 'cdda plan=(siehe oben) list'.
- Man beachte bitte, der angezeigte Wert ist in MB = Megabyte also 1024*1024
- Byte. 40MB sind also 41943040 Bytes.
-
-
- skip_lo = 150
-
- > Anzahl der Blocks die vom Leadout abgezogen werden. 1s ca. 75 Blocks (150
- sind also 2s).
- Dies sind die angesprochenen 2 Sekunden die vom Leadout jedes Titels
- automatisch abgezogen werden. (wenn kein anderer Abzug eingegeben wird.)
- 1 Block hat wie erwähnt die Länge von ca. 13,3 Tausendstel Sekunden.
- 1 Sekunde sind also etwa 75 Blocks
-
-
- repl_spc = 1
-
- > Bei Eingabe der CD-Titelnamen Leerzeichen durch '_' ersetzen 0=nein 1=ja.
- Hiermit wird entschieden ob in den eingegebenen Dateinamen die Leerzeichen
- duch Unterstriche ersetzt werden sollen.
-
-
- max_name_len = 30
-
- > max. Dateinamenlänge ffs=30 Zeichen
- Und hier wird die maximale Dateinamenlänge festgelegt. Dies ist vom
- verwendeten Filesystem abhängig. Bei dem von mir verwendeten
- FastFileSystem sind es 30 Zeichen.
-
-
- dirty_char = '~%#?<>|()[]":'
-
- > ungültige Zeichen die bei der Namenseingabe ersetzt werden müssen.
- Dies sind die (mir bekannten) Zeichen die bei Dateinamen des Amigas nicht
- verwendet werden dürfen und durch Unterstrich ersetzt werden. Wenn ich
- mich geirrt habe, Zeichen vergessen wurden, sich das alles irgendwann
- ändert oder falls einfach irgendjemand einen Buchstaben besonders hasst,
- kann das Zeichen hier ergänzt oder entfernt werden. Da das
- Anführungszeichen auch zu den unerlaubten Zeichen gehört, werden diesmal
- die Zeichen mit '' begrenzt!
-
-
- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-